﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using ChurchDiary.TableEntity;

namespace ChurchDiary.DAL.Contract
{
    public interface IOrganization
    {
        string GetOrganizationProfile();
        int InsertOrganizationStructure(OrganizationStructure organization);
        List<Departments> GetDepartMents();
        AllDepartMentDetails GetSubDepartMents(int parentid,int Mode);
        #region Organization Partition
        string InsertOrganizationPartition(EnitityOrganizationPartition OrganizationPartition);
        string UpdateOrganizationPartition(EnitityOrganizationPartition OrganizationPartition);
        string DeleteOrganizationPartition(Guid PartitionId);
        List<EnitityOrganizationPartition> GetOrganizationPartitions();
        EnitityOrganizationPartition GetOrganizationPartition(Guid PartitionId);
        List<EnitityOrganizationPartition> GetOrganizationPartitions(int OrganizationId);
        List<EnitityOrganizationPartition> GetOrganizationPartitionfordp();
        #endregion
        #region OrganizationInfo
        EntityOrganizationInfo GetOrganizationInfo();
        EntityUser GetUserInfo(Guid? UserId);
        EntitySoftwareInfo GetSoftwareInfo();
        #endregion

    }
}
